#pragma once
#include "stdafx.h"
#include "Operator.h"
#include "QueueEntity.h"
#include "LineageSynopsis.h"
#include "RelationSynopsis.h"
#include "Operator.h"
#include "ElementIterator.h"
#include <boost/shared_ptr.hpp>
class DstreamOperator:public Operator 
{
private:
	
	boost::shared_ptr<RelationSynopsis>relationSynopsis;
	boost::shared_ptr<ElementIterator> elementIterator;
	Timestamp lastInputTimestamp;
	Element blockElement;
	void produceOutput();
	void dealWithBlock();
public:
	DstreamOperator(void);
	~DstreamOperator(void);
	void execution(int executionTimes);
	
};

